package cn.sys.dao;

import cn.sys.controller.dto.SearchDTO;
import cn.sys.entity.Notice;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 公告功能部分的持久层接口
 */
public interface NoticeDao {
    /**
     * 获取公告信息列表
     */
    List<Notice> findNotices(SearchDTO searchDTO);

    /**
     * 根据公告id删除公告信息
     */
    int deleteNoticeById(int noticeId);

    /**
     * 根据公告id查询公告信息和发布人信息
     */
    Map<String, Object> findNoticeAndManagerById(int noticeId);

    /**
     * 添加一条公告
     */
    int addNotice(Notice notice);

    /**
     * 删除临时公告
     */
    int deleteTempNoticeById(@Param("noticeId") int noticeId,@Param("type") int type);
}
